#pragma once
#ifndef __MESHROTATIONAFFECTORFACTORY_H_
#define __MESHROTATIONAFFECTORFACTORY_H_
#include "DestinyParticleFxPrerequisites.h"
#include "OgreParticleAffectorFactory.h"

namespace Destiny
{
	class CMeshRotationAffectorFactory:public Ogre::ParticleAffectorFactory
	{
	private:
		CMeshRotationAffectorFactory(void);
		static CMeshRotationAffectorFactory* mSelf ;

	public:
		~CMeshRotationAffectorFactory(void);

		static CMeshRotationAffectorFactory* getSinlgetonPtr()
		{
			if ( NULL == mSelf )
			{
				mSelf = new CMeshRotationAffectorFactory ;
			}

			return mSelf ;
		}

		virtual Ogre::String getName() const
		{
			return "MeshRotator" ;
		}

		virtual Ogre::ParticleAffector* createAffector(Ogre::ParticleSystem* psys) ;
	};
}

#endif